<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>78_多态</title>
		<script>
			/* 
			多态
				- 在JS中不会检查参数的类型，所以这就意味着任何数据都可以作为参数传递.
				- 要调用某个函数，无需指定的类型，只要对象满足某些条件即可.
			 */
			class Person {
				constructor(name) {
					this.name = name;
				}
			}
			class Dog {
				constructor(name) {
					this.name = name;
				}
			}

			const dog = new Dog("旺财")
			const p1 = new Person("孙悟空")
			console.log(dog);
			console.log(p1);

			/* 多态
				- 在JS中不会检查参数的类型，所以这就意味着任何数据都可以作为参数传递.
				- 要调用某个函数，无需指定的类型，只要对象满足某些条件即可.
			*/
			function sayHello(obj) {
				console.log(obj.name);
			}
			sayHello(p1)
			sayHello(dog)
		</script>
	</head>
	<body>
	</body>
</html>